home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / mint / shells / sh03src.zoo / sh-pl03 / sh / syntax.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-03-22  |  1.5 KB  |  46 lines

  1. /*
  2.  * This file was generated by the mksyntax program.
  3.  */
  4.  
  5. #include <sys/cdefs.h>
  6. /* Syntax classes */
  7. #define CWORD 0            /* character is nothing special */
  8. #define CNL 1            /* newline character */
  9. #define CBACK 2            /* a backslash character */
  10. #define CSQUOTE 3        /* single quote */
  11. #define CDQUOTE 4        /* double quote */
  12. #define CENDQUOTE 5        /* a terminating quote */
  13. #define CBQUOTE 6        /* backwards single quote */
  14. #define CVAR 7            /* a dollar sign */
  15. #define CENDVAR 8        /* a '}' character */
  16. #define CEOF 9            /* end of file */
  17. #define CCTL 10            /* like CWORD, except it must be escaped */
  18. #define CSPCL 11        /* these terminate a word */
  19.  
  20. /* Syntax classes for is_ functions */
  21. #define ISDIGIT 01        /* a digit */
  22. #define ISUPPER 02        /* an upper case letter */
  23. #define ISLOWER 04        /* a lower case letter */
  24. #define ISUNDER 010        /* an underscore */
  25. #define ISSPECL 020        /* the name of a special parameter */
  26.  
  27. #define SYNBASE 129
  28. #define PEOF -129
  29.  
  30.  
  31. #define BASESYNTAX (basesyntax + SYNBASE)
  32. #define DQSYNTAX (dqsyntax + SYNBASE)
  33. #define SQSYNTAX (sqsyntax + SYNBASE)
  34.  
  35. #define is_digit(c)    ((unsigned)((c) - '0') <= 9)
  36. #define is_alpha(c)    ((is_type+SYNBASE)[c] & (ISUPPER|ISLOWER))
  37. #define is_name(c)    ((is_type+SYNBASE)[c] & (ISUPPER|ISLOWER|ISUNDER))
  38. #define is_in_name(c)    ((is_type+SYNBASE)[c] & (ISUPPER|ISLOWER|ISUNDER|ISDIGIT))
  39. #define is_special(c)    ((is_type+SYNBASE)[c] & (ISSPECL|ISDIGIT))
  40. #define digit_val(c)    ((c) - '0')
  41.  
  42. extern const char basesyntax[];
  43. extern const char dqsyntax[];
  44. extern const char sqsyntax[];
  45. extern const char is_type[];
  46.